Aida 6.5 Release Notes
Upgrade procedure
To upgrade your existing 6.4 Aida images, just load 6.5 over it then run this script:
AIDASite allInstances do: [:each |
    each releaseApplicationState.
    each router addMethodResourcesRoute.
    each urlResolver removeObjectsOfClass: WebMethodResource.
    each router addMethodLibrariesRoute].
MIMEMap allInstances do: [:each | each initialize].
Changes since last release
--- Aug 2012
- patch: URLResolver addObject:withUrl: longstanding bug: now it retrurns anObject argument, not itself. This bug caused images not shown imediatelly after install
 
- WebPage headers lazy init now
 
- Dictionary aidaWithAll: added to have a portable #withAll:
 
- BootstrapLibrary upgraded to just released Twitter Bootstrap 2.1.0
 
- WebPage ensureTitleInHeader patch
 
- TinyMCELibrary class urlToMethodMap sliced into  few 100 lines methods (256 literals limit on older VWs)
 
- AmberLibrary urlToMethodMap also sliced
 
- AidaMobile package introduced in AidaAddons with TwiterMobileApp demo based on jQuery Mobile framework
 
- WebElement table like usage for all structural tags, like e newFooter. e footer ..., also for lists: e newList ordered. e list ...
 
- WebElement subelement introduced, to easier usage similar as for tables
 
- video, audio and canvas elements added
 
- WebList default type is now #unordered, non-needed methods removed
 
- WebPage rearangeHeaders added to finally set a correct header order before streaming, currenty in-line CSS style is put at the end of all other styles
 
- WebFormElement, WebModelAdaptor format instvar added to override autoconverting of values. Currently only #iso for Dates is supported
 
- WebFormElement min: max: added. for range input field.
 
- WebImage src: can be now manually set (see #prepareAttributesToPrint)
 
- BootstrapLibrary added, with Twitter Bootstrap CSS framework
 
--- Jul 2012
- MethodLibraries introduced, to handle JS libraries 
- WebMethodLibrabry as superclass
 
- WebMethodLibImporter to help importing/updating the libraries
 
- AmberLibrary, JQueryLibrary, ScriptaculousLibrary, TinyMCELibrary prepared by default in Aida-Libraries
 
- WebRouter addMethodLibrariesRoute added
 
- WebStyle mosts scripts moved out to method libraries
 
 
- WebStyle calendarLangCzech added, thanks to Martin Polak
 
- WebPage addMetaName:content: added
 
- WebPage lateInitPageHeaderLinks to add WebStyle CSS and JS at the end, after all other links, so that per-site customization of CSS/JS by overriding default CSS/JS from libraries is possible
 
- WebElement addLabelFor:text and class WebLabel introduced
 
- WebElement HTML5 structural tags added (class newSection, setSection, etc.)
 
- WebContext nextId instvar added, to set next element id more reliably
 
- Object aidaWebAppFor: tries to find MobileApp first if request comes from mobile
 
- MIMEMap isTextType, textMimeTypes .js = application/javascript
 
- Autocompete and in-place editing is migrating to jQuery UI  ( so far just added new WebAUtocmoplete2Field and WebInPlaceEditable2Text)
 
- jQuery examples added to WebDemoApp, view jQuery
 
- WebStyle jQuery and jQuery UI JS libs added, including ensureJQuery* methods
 
- Web element can now receive and respond to web request directly
 
- WebSession respondToElementDirectRequest added, to find an element and redirect request to it 
 
- URL must be in /aidasession/element-id123-ctx456 format
 
 
- WebRouter additional route to method resources directly
 
- WebJSONPresenter presenterBlock instvar introduced, by default: self observee asJson
 
--- Jun 2012
- block ENTER key when in WebGrid filter fields (see #buildTableFilterRow)
 
- WebFormElement blockEnterKey added
 
- Check JSON support in browser: 
-  WebPage addJSONReportScriptAndHandler
 
-  WebSession existJson, setJsonExists
 
-  WebStyle jsEvents: aidaJsonReport() added
 
 
- WebSession isiBrowserSupported says true if exist JSON in browser
 
- EMailMessenger emailAddresFor: adds just plain addres and not full name
 
--- May 2012
- WebIndex isValidWord: allows now 3 or more characters, numbers included in search criteria
 
- WebIndex boldify:
 
- AIDASite 
- federatedAuthorizator added for OAuth authorization
 
- redirectToOtherHost:on: sets also cookie to redirect response
 
- answerTo: shoudRedirect sentence moved after find session .
 
- patch: properArray: deals with Array too
 
 
- WebSecurityManager iniDefualtAccessRights loginGoogle added
 
- WebStyle Amber renamed from JTalk
 
- DefaultWebStyle headerUserElement Admin user has always admin rights
 
- String asHttpFriendly skip last point
 
- patch: URLResolver findHostPortOn: .. self site port- mobile phone to Address and Party
 
--- Mar 2012
- WebRegistrationApp now two steps only, reporting registration to transcript
 
- OpenID federated login and registration introduced  
- load AidaCloudSSO from AidaAddons first
 
- AIDASite federatedAuthenticator, setFederatedAuthenticator
 
- WebAdminApp viewLoginGoogle, viewLogoutGoogle (just Google for now)
 
- WebRegistrationApp viewMainGoogle actionMainGoogle, ... (just Google for now)
 
 
- patch: WebUserGroup allUserSorted sort by nameSurname
 
- aidaIsRespondingStreamed renamed from isRespondingStreamed
 
- Object widgetsAndAppsFromStack added
 
- WebForm superform: check against adding itself
 
- WebWidget postAddAction adds subform more carefully
 
- MIGRATION: manually rename class AIDAModelAdaptor to AidaModelAdaptor,
 
- AidaMutex added to have portable protection of critical sections
 
- version to 6.5 in AIDASite class version
 
- WebUser copy, copyOtherTo:
 
- patch: WebLink has link too if urlReference is empty string
 
- URLResolver preferredUrl must start with '/' otherwise error is raised. Thanks to report by Dirk Verleysen
 
- patch: WebApplication isStandaloneApp checks a locally set flag for standaloniness
 
- WebPage redirectTo:view: added
 
- WebDemoApp: timestamps of widget creation added, widget refresh link, popup closing refresh those times
 
- EMailMessenger isSendingStarted added
 
- WebStyle navBarDemos: removed JS, calendar and image gallery demos
 
- AidaProfiling profilePingToVW added, sampleRequest with cookies
 
- patch: AIDASite logging optimized
 
--- Feb 2012
- Platform specific methods browsing added:    
- Those methods have a comment like "Pharo specific"
 
- AIDASite class browsePlatformSpecificMethods will open a browser with those methods
 
- AIDASite class platformSpecificMethods return all such methods (as CompiledMethod-s)
 
- patch: some comments corrected, 'specific' renamed to something else so that this word is reserved for platform specifics only
 
 
- Object defaultToPrefferedUrl added
 
- URLResolver defaultToPreffferedUrl: added
 
- patch: URLResolver removeObjectsOfClass: remove their counters too
 
- patch: WebSecurityManager adminUser, guestUser raise error id they don't exist
 
- patch: WebSession releaseApplicationState inits command queue too
 
- patch: WebForm allFiledsIncludingSubforms - recursion bug catcher, commented out
 
- patch: SwazooServer class representBinaryOn: raise error to catch too-far BOSS-outs
 
- patch: WebIndexApp actionResultsSearch added
 
- WebIndex improvements:     
- words in title have 100x weight
 
- search words bolded in results titles
 
- no more C web clipboard icon in results
 
 
- WebDemo asJson to return a simple JSON on http://localhost:8888/demo.json
 
- patch: WebIndex objectsForWord: return only published versions of versioned objects
 
- JSON presentation added. To present domain object as JSON, it should for now implement a method #asJson, then you can return JSON by adding '.json' to object's URL.     
- WebJSONPresenter added, rougly like WebApplication
 
- Object aidaPresenterFor:on: renamed from asWebFor:on: (previous printWebPage...)
 
- Object aidaPresenterFor:on: returns JSON presenter if .json in URL
 
- HTTPRequest aidaPresentationType from URL can be #web #json #xml for now
 
- URLResolver objectOnDifferentPresentationUrl: added, for JSON etc
 
- URLResolver objectOnUrl deals with URLs for JSON and other presentations
 
- AIDASite answer:toGetOrPost:on:  local var rename: 'presenter' instead 'page'
 
 
--- Jan 2012
- WebLink accessAllowedFor: if app is nil, allowed (temporary)
 
- DailyCollection removeAnywhere: added to remove entries with changed date
 
- Numberer decreaseCounter: added
 
- patch: WebLink accessAllowedFor: looks for app by stack climbing too
 
- Escalation to admin rights finished and put in place     
- #hasAdminRights renamed everywhere from #inAdminGroup or #isAdmin
 
- WebSession login escalate to admin rights immediatelly (temporary)
 
 
- No more printWeb* methods, no more 'printing' method category for web stuff      
-  asWebFor:on: renamed from printWebPageFor:on:
 
-  category 'printing' renamed to private-streaming or just moved to 'private'
 
-  category 'printing' renamed to 'views'
 
-  some more method category renaming
 
-  Object few more renames
 
 
- Object changeToPreferredUrl introduced, to simplify preferred URL changing
 
- WebApplication refactoring and obsoletal/removal of unneeded methods, also category security renamed to private-security
 
- more renaming for method intention be more clear (also Html instead HTML)      
- streamHtmlTo:for:on: renamed from printHTMLPageOn:for:on:
 
- and many more  streamHtml* instead of printHTML*...
 
 
- NOTE: Rename methods below in your apps! 
 
- Object preferredUrl (double r ) renamed from preferedUrl
 
- URLResolver consistent use of Url instead of URL (also Html) in method names, few of them:      
-  changeToPreferredUrl: renamed from changeToPreferedURL:
 
-  defaultUrl:for: renamed from defaultURL:forObject:
 
-  objectOnUrl: renamed from ooRefFromURL:
 
-  existUrl: renamed from existURL:
 
-  old methods above moved to private-obsolete
 
 
- Object extensions - method categories reorganized
 
- Manual escalation to Admin rights introduced. Even if in Administrators group, user have now admin rights until manually escalate it so.      
- WebUser escalate to Admin
 
- DefaultWebPage headerUserElement added to show escalation links (be Admin) and shows user in red if escalated to admin
 
- WebLink shows grayed links without access rights
 
 
- Weblink cleanup of unneeded class methods
 
- WebIndexApp viewMain searches immediately and redirects to results. For ajaxified search forms and redirects.
 
- patch: WebElement existsScriptForEvent patch, thanks to Bob Calco
 
- patch: AIDASite answerTo: error reporting to Transcript switched off
 
 
Continue to older 6.4 Release notes